// pages/index/index.js
import request from '../../request/index'
//使用 async await 语法必须引入，固定写法。
import regeneratorRuntime from '../../utils/runtime'
const App = getApp()
Page({

  /**
   * 页面的初始数据
   */
  data: {
    banners: [],//轮播图数据
    fourGrid: [
      { name: "每日推荐", icon: "icon-icon" },
      { name: "排行榜", icon: "icon-paixingbang" },
      { name: "歌单", icon: "icon-SongListgedan" },
      { name: "树洞", icon: "icon-diantai" },
    ],//四宫格数据
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    this.getSwiper()
  },

  //获取轮播图数据
  async getSwiper() {
    const result = await request({ url: 'banner', data: { type: 1 } })
    // console.log(result)
    if (result.code === 200) {
      //仅保留需要用到的数据
      let banners = []
      result.banners.forEach(item => {
        const { typeTitle, pic, titleColor } = item
        const id = item.song && item.song.id
        banners.push({ typeTitle, pic, titleColor, id })
      })
      this.setData({ banners })
      //将第一张轮播图保存到本地，供每日推荐页面使用
      wx.setStorageSync("recommend-bg", banners[0].pic);
      return
    }
    console.log('获取轮播图数据失败', result)
  },

  //进入各个宫格详情
  goDetailGrid(event) {
    const { name } = event.currentTarget.dataset
    switch (name) {
      case "每日推荐":
        wx.navigateTo({ url: '/pages/recommend-list/recommend-list' })
        break;
      case "排行榜":
        wx.navigateTo({ url: '/pages/rank-list/rank-list' })
        break;
      case "歌单":
        wx.navigateTo({ url: '/pages/playlist-square/playlist-square' })
        break;
      case "树洞":
        wx.navigateTo({ url: '/pages/tree-hole/tree-hole' })
        break;
      default:
        break;
    }
  },
  //播放音乐
  playMusic(event) {
    //如果是点击banner页面进行播放歌曲，歌单就是历史记录
    const { id } = event.currentTarget.dataset
    if (id) {
      const db = wx.cloud.database()
      const music_history = db.collection("music_history")
      music_history
        .where({
          _openid: App.globalData.openid
        })
        .get()
        .then(res => {
          res.data[0].history.unshift({ id })
          App.globalData.playList = res.data[0].history
          App.globalData.musicId = id
          App.globalData.index = 0
          wx.navigateTo({ url: '/pages/music-play/music-play?id=' + id })
        })
    }else{
      wx.showToast({
        title: '非歌曲不支持播放~',
        icon: 'none',
        duration: 1500,
        mask: false,
      })
    }
  },
  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {
  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  }
})